package org.gws.alaska.metamodel.uml
import org.gws.alaska.metamodel.validator.AlaskaModelCustomValidator;
import org.gws.alaska.metamodel.validator.AlaskaModelSyntaxValidator;
import org.gws.alaska.metamodel.validator.AlaskaModelValidator;

/**
 * @author Gianfranco Murador 
 * definisce una classe astratta come Factory 
 * di servizi per la manipolazione dei modelli
 **/

abstract class AlaskaModelServiceFactory {

	public abstract AlaskaModelStore getModelStore();
	public abstract AlaskaProfileBuilder getProfileBuilder(params = [:]);
	public abstract AlaskaModelBuilder getModelBuilder();
	public abstract AlaskaModelValidator getModelValidator();
	public abstract AlaskaModelSyntaxValidator getProfileValidator();
	public abstract AlaskaModelCustomValidator getCustomModelValidator(); 
	public abstract AlaskaModelSyntaxValidator getSyntaxValidator(); 
}







